import java.awt.Graphics;
import java.awt.Image;
import java.awt.Rectangle;


public class Bot {
	public Image BotImage;
	public int x,y;
	public int ActionX,ActionY;//이미컷 xy
		
		
	public int count; //전체 이미지의 갯수
	public int width;
	public int height;
	public int prevChangeTime =1000;
	public int ChangeSpeed = 200;
	public boolean active;
	public boolean active2;
	public Rectangle rect;
		
	public int currentIndex = 0;
	public Bot(Image BotImage){//초기화 
		this.BotImage = BotImage;
		x = (int)(Math.random()*(1200 - BotImage.getWidth(null)));
		y = 0;
		
		rect = new Rectangle(BotImage.getWidth(null),BotImage.getHeight(null));
	}
		
	public Bot(Image BotImage,int ActionX, int ActionY,int count){//오버라이딩
		this.BotImage = BotImage;
		this.ActionX = ActionX;
		this.ActionY = ActionY;
		this.count = count;
		width = BotImage.getWidth(null)/count; //가로방향 자를갯수
		height = BotImage.getHeight(null);
		active2 = false;
	}
		
	public void update(){
		y += (int)(Math.random()*15);
		if(y> 550 - BotImage.getHeight(null)){
			this.active = false;
		}
	}
		
	public void Render(Graphics g){
		if(active){//true일때 출력
			g.drawImage(BotImage, x, y, null);
		}
		if(active2){//true일때 출력
			g.drawImage(BotImage,
					ActionX,						//표시할 화면의 좌상단 x좌표
					ActionY,						//표시할 화면의 좌상단 y좌표
					ActionX+width,				//표시할 화면의 우하단 x2좌표
					ActionY+height,				//표시할 화면의 우하단 y2좌표
					width* currentIndex,	//원본 이미지에서 잘라낸 영역의 좌상단 x
					0,						//원본 이미지에서 잘라낸 영역의 좌상단 y
					width*(currentIndex+1), //원본 이미지에서 잘라낸 영역의 우하단 x
					height,				
					//원본 이미지에서 잘라낸 영역의 우하단 y
					null);	
		}
	}
	public Rectangle getArea(){
		rect.x = x;
		rect.y = y;
		
		return rect;
	}
}
